
package com.zhiwei.codesecurity.common.webservice.checkmarx.portal.v7;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.datatype.XMLGregorianCalendar;


/**
 * <p>CxWSDataRetentionRequest complex type的 Java 类。
 * 
 * <p>以下模式片段指定包含在此类中的预期内容。
 * 
 * <pre>
 * &lt;complexType name="CxWSDataRetentionRequest"&gt;
 *   &lt;complexContent&gt;
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType"&gt;
 *       &lt;sequence&gt;
 *         &lt;element name="Id" type="{http://www.w3.org/2001/XMLSchema}int"/&gt;
 *         &lt;element name="RequestDate" type="{http://www.w3.org/2001/XMLSchema}dateTime"/&gt;
 *         &lt;element name="RequestEndDate" type="{http://www.w3.org/2001/XMLSchema}dateTime"/&gt;
 *         &lt;element name="InitiatorName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="RequestTimeLimitation" type="{http://www.w3.org/2001/XMLSchema}dateTime"/&gt;
 *         &lt;element name="Stage" type="{http://Checkmarx.com}CxDataRetentionStatus"/&gt;
 *         &lt;element name="CurrentProgress" type="{http://www.w3.org/2001/XMLSchema}int"/&gt;
 *         &lt;element name="TotalProgress" type="{http://www.w3.org/2001/XMLSchema}int"/&gt;
 *         &lt;element name="StageError" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/&gt;
 *         &lt;element name="IsDone" type="{http://www.w3.org/2001/XMLSchema}boolean"/&gt;
 *         &lt;element name="OriginalConfiguration" type="{http://Checkmarx.com}CxDataRetentionConfiguration" minOccurs="0"/&gt;
 *       &lt;/sequence&gt;
 *     &lt;/restriction&gt;
 *   &lt;/complexContent&gt;
 * &lt;/complexType&gt;
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CxWSDataRetentionRequest", propOrder = {
    "id",
    "requestDate",
    "requestEndDate",
    "initiatorName",
    "requestTimeLimitation",
    "stage",
    "currentProgress",
    "totalProgress",
    "stageError",
    "isDone",
    "originalConfiguration"
})
public class CxWSDataRetentionRequest {

    @XmlElement(name = "Id")
    protected int id;
    @XmlElement(name = "RequestDate", required = true)
    @XmlSchemaType(name = "dateTime")
    protected XMLGregorianCalendar requestDate;
    @XmlElement(name = "RequestEndDate", required = true, nillable = true)
    @XmlSchemaType(name = "dateTime")
    protected XMLGregorianCalendar requestEndDate;
    @XmlElement(name = "InitiatorName")
    protected String initiatorName;
    @XmlElement(name = "RequestTimeLimitation", required = true, nillable = true)
    @XmlSchemaType(name = "dateTime")
    protected XMLGregorianCalendar requestTimeLimitation;
    @XmlElement(name = "Stage", required = true)
    @XmlSchemaType(name = "string")
    protected CxDataRetentionStatus stage;
    @XmlElement(name = "CurrentProgress", required = true, type = Integer.class, nillable = true)
    protected Integer currentProgress;
    @XmlElement(name = "TotalProgress", required = true, type = Integer.class, nillable = true)
    protected Integer totalProgress;
    @XmlElement(name = "StageError")
    protected String stageError;
    @XmlElement(name = "IsDone")
    protected boolean isDone;
    @XmlElement(name = "OriginalConfiguration")
    protected CxDataRetentionConfiguration originalConfiguration;

    /**
     * 获取id属性的值。
     * 
     */
    public int getId() {
        return id;
    }

    /**
     * 设置id属性的值。
     * 
     */
    public void setId(int value) {
        this.id = value;
    }

    /**
     * 获取requestDate属性的值。
     * 
     * @return
     *     possible object is
     *     {@link XMLGregorianCalendar }
     *     
     */
    public XMLGregorianCalendar getRequestDate() {
        return requestDate;
    }

    /**
     * 设置requestDate属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link XMLGregorianCalendar }
     *     
     */
    public void setRequestDate(XMLGregorianCalendar value) {
        this.requestDate = value;
    }

    /**
     * 获取requestEndDate属性的值。
     * 
     * @return
     *     possible object is
     *     {@link XMLGregorianCalendar }
     *     
     */
    public XMLGregorianCalendar getRequestEndDate() {
        return requestEndDate;
    }

    /**
     * 设置requestEndDate属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link XMLGregorianCalendar }
     *     
     */
    public void setRequestEndDate(XMLGregorianCalendar value) {
        this.requestEndDate = value;
    }

    /**
     * 获取initiatorName属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getInitiatorName() {
        return initiatorName;
    }

    /**
     * 设置initiatorName属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setInitiatorName(String value) {
        this.initiatorName = value;
    }

    /**
     * 获取requestTimeLimitation属性的值。
     * 
     * @return
     *     possible object is
     *     {@link XMLGregorianCalendar }
     *     
     */
    public XMLGregorianCalendar getRequestTimeLimitation() {
        return requestTimeLimitation;
    }

    /**
     * 设置requestTimeLimitation属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link XMLGregorianCalendar }
     *     
     */
    public void setRequestTimeLimitation(XMLGregorianCalendar value) {
        this.requestTimeLimitation = value;
    }

    /**
     * 获取stage属性的值。
     * 
     * @return
     *     possible object is
     *     {@link CxDataRetentionStatus }
     *     
     */
    public CxDataRetentionStatus getStage() {
        return stage;
    }

    /**
     * 设置stage属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link CxDataRetentionStatus }
     *     
     */
    public void setStage(CxDataRetentionStatus value) {
        this.stage = value;
    }

    /**
     * 获取currentProgress属性的值。
     * 
     * @return
     *     possible object is
     *     {@link Integer }
     *     
     */
    public Integer getCurrentProgress() {
        return currentProgress;
    }

    /**
     * 设置currentProgress属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link Integer }
     *     
     */
    public void setCurrentProgress(Integer value) {
        this.currentProgress = value;
    }

    /**
     * 获取totalProgress属性的值。
     * 
     * @return
     *     possible object is
     *     {@link Integer }
     *     
     */
    public Integer getTotalProgress() {
        return totalProgress;
    }

    /**
     * 设置totalProgress属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link Integer }
     *     
     */
    public void setTotalProgress(Integer value) {
        this.totalProgress = value;
    }

    /**
     * 获取stageError属性的值。
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public String getStageError() {
        return stageError;
    }

    /**
     * 设置stageError属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public void setStageError(String value) {
        this.stageError = value;
    }

    /**
     * 获取isDone属性的值。
     * 
     */
    public boolean isIsDone() {
        return isDone;
    }

    /**
     * 设置isDone属性的值。
     * 
     */
    public void setIsDone(boolean value) {
        this.isDone = value;
    }

    /**
     * 获取originalConfiguration属性的值。
     * 
     * @return
     *     possible object is
     *     {@link CxDataRetentionConfiguration }
     *     
     */
    public CxDataRetentionConfiguration getOriginalConfiguration() {
        return originalConfiguration;
    }

    /**
     * 设置originalConfiguration属性的值。
     * 
     * @param value
     *     allowed object is
     *     {@link CxDataRetentionConfiguration }
     *     
     */
    public void setOriginalConfiguration(CxDataRetentionConfiguration value) {
        this.originalConfiguration = value;
    }

}
